# -*- coding: utf-8 -*-
# This code written by ChanGOGOGO
"""
DEV - 创建任务
"""
import sys
import os

current_script_dir = os.path.dirname(os.path.abspath(__file__))
parent_dir = os.path.dirname(current_script_dir)
if parent_dir not in sys.path:
    sys.path.append(parent_dir)
from callplus_api import OpenAPI
from util import get_yyyymmddhhmmssmmm

"""接口调用"""
open_api = OpenAPI(env="dev")
for x in range(1000):
    open_api.create_callout_task(
        # -------------------必填入参-------------------
        out_task_id=f"interface-{get_yyyymmddhhmmssmmm()}",
        template_id="1001-1495-12986",  # 场景模板ID
        callout_number="opensips",  # 主叫号码
        callout_line_count=1,  # 并发数
        # asr_engine_id=257,  # ASR引擎ID
        # tts_engine_id=258,  # TTS引擎ID
        # -------------------选填入参-------------------
        task_name=f"interface-{get_yyyymmddhhmmssmmm()}",  # 任务名称
        # tts_play_mode="playMixTts",  # TTS播放模式
        # tts_supplier_id="zhuiyi",  # TTS供应商ID
        # tts_engine_id="258",  # TTS引擎ID
        # tts_voice_id="xiaona",  # 音色id
        # tts_speed=1,  # TTS语速
        # tts_volume=1.5,  # TTS音量
        # voice_template_name="亲和",  # 录音包名称
        # asr_engine_id="257",  # ASR引擎ID
        # asr_supplier_id="zhuiyi",  # ASR供应商ID
        start_call_time="2025-08-28 16:40:00",  # 定时开启任务时间
        # recall_num=2,  # 重呼次数
        # recall_strategy=3,  # 重拨策略：1-定时重拨，2-间隔重拨，3-队尾重拨
        # recall_time="23:59",  # 定时重拨时间。重拨策略为1时，需要传入
        # recall_gap=1,  # 重拨间隔时间
        # recall_num_checked=True,  # 自定义重拨号码开关
        # recall_num_map={
        #     "1": "079500000001",
        #     "2": "079500000010",
        # },  # 自定义重拨号码配置
        # max_ring_duration=30,  # 最大响铃时长
        # task_notice=True,  # 任务通知开关
        # error_pause_task_enable=True,  # 异常暂停任务开关
        # error_pause_task_error_num=100,  # 连续100通电话中N通未接通时，异常暂停
        # connect_rate_alert_enable=True,  # 接通率告警开关
        # connect_rate_alert_settings={0: 35},  # 接通率告警配置
        # alert_ways=[2],  # 告警方式
        # black_group_ids=[1],  # 黑名单组ID
        # black_group_enable=True,  # 黑名单组开关
        # check_duplicate_case_id=True,  # 限制case_id不得重复开关
        # tel_valid=True,  # 号码有效性校验开关
        business_hours_limit=False,  # 营业时间限制开关
        # business_hours_settings=[
        #     {
        #         "start_time": "09:00:00",
        #         "end_time": "12:00:00",
        #     },
        #     {
        #         "start_time": "14:00:00",
        #         "end_time": "18:00:00",
        #     },
        # ],  # 营业时间限制配置
        phone_num=10,  # 需要生成的手机号码名单数量，为0时不生成
        custom_variable={"name": "姚先生"},  # 自定义变量
    )
    print(f"✅ 已完成创建第{x+1}个任务。")
